package day06;

import javax.servlet.*;
import java.io.IOException;

//过滤器
public class A02_Filter implements Filter {
    /**
     * 1.概述
     *  过滤器什么时候执行?
     *      在访问资源的时候
     *  过滤器可以有多个吗?
     *      可以
     *2.Filter生命周期
     *      1).应用加载的时候过滤器对象被创建
     *      2).关闭应用的时候过滤器对象被销毁
     * Filter:
     *      生命周期
     *      多个Filter的执行顺序
     */
    @Override
    public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
        System.out.println("过滤器执行1");
        request.setCharacterEncoding("utf-8");
        response.setContentType("text/html;charset=utf-8");
        //放行
        chain.doFilter(request,response);
    }

    //在对象创建的时候被Tomcat服务器调用
    //初始化工作
    @Override
    public void init(FilterConfig filterConfig) throws ServletException {
        System.out.println("对象被创建");
    }
    //对象被销毁的时候会被调用  GC垃圾回收
    //垃圾回收,资源释放
    @Override
    public void destroy() {
        System.out.println("对象被销毁");
    }
}
